home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 25 / CU Amiga Magazine's Super CD-ROM 25 (1998)(EMAP Images)(GB)(Track 1 of 2)[!][issue 1998-08].iso / CUCD / Programming / GMS / GMSDev / Includes / system / tracking.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-01-15  |  1.3 KB  |  47 lines

  1. #ifndef SYSTEM_TRACKING_H
  2. #define SYSTEM_TRACKING_H 1
  3.  
  4. /*
  5. **  $VER: tracking.h V1.0
  6. **
  7. **  (C) Copyright 1996-1998 DreamWorld Productions.
  8. **      All Rights Reserved
  9. */
  10.  
  11. #ifndef DPKERNEL_H
  12. #include <dpkernel/dpkernel.h>
  13. #endif
  14.  
  15. /*****************************************************************************
  16. ** Resource numbers.
  17. */
  18.  
  19. #define RES_EMPTY    0
  20. #define RES_MEMORY   1   /* Memory allocation, lowest level resource type */
  21. #define RES_COMPLEX  2   /* Complex allocation - (hardware and software) */
  22. #define RES_CUSTOM   3   /* Software allocation of a customised type */
  23. #define RES_HARDWARE 4   /* Hardware allocation */
  24.  
  25. /*****************************************************************************
  26. ** This structure is used only within the kernel.
  27. */
  28.  
  29. struct Track {
  30.   struct Track *Next;  /* Next in the chain */
  31.   WORD   ID;           /* ID number of this resource (see above) */
  32.   LONG   Key;          /* Unique key for the resource */
  33.   APTR   Address;      /* Address of object to free */
  34.  
  35.   #ifdef _DCC
  36.     void (*Routine)(__D0 APTR Address, __D1 LONG Key);
  37.   #else
  38.    #ifdef __SASC
  39.      __asm  void (*Routine)(register __d0 APTR Address, register __d1 LONG Key);
  40.    #else
  41.      void (*Routine)(APTR Address, LONG Key);
  42.    #endif
  43.   #endif
  44. };
  45.  
  46. #endif /* SYSTEM_TRACKING_H */
  47.